<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="../../template.xhtml">

        <ui:define name="title">
            <h:outputText value="#{myBundle.AppName}"></h:outputText>
        </ui:define>

        <ui:define name="body" >
            
            <h:form id="fanelgc">                
                <p:panelGrid style="margin:0 auto;">                    
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Nombres:*"/></p:column>
                        <p:column>
                            <p:inputText id="rnombre" value="#{candidatoCvMB.persona.nombres}" required="true" requiredMessage="Nombres Obligatorios" validatorMessage="Solo Letra">
                                <p:ajax event="blur" update="mrnombre,rnombre"/>
                                <f:validateRegex pattern="[a-zA-Z]+"/>
                            </p:inputText>                                                    
                        </p:column>
                        <p:column styleClass="tdlavel"><h:outputText value="Apellidos:*" /> </p:column>
                        <p:column>
                            <p:inputText id="rapellidos" value="#{candidatoCvMB.persona.apellidos}" required="true" requiredMessage="Apellidos Obligatorios" validatorMessage="Solo Letra">
                                <p:ajax event="blur" update="mrapellidos,rapellidos"/>
                                <f:validateRegex pattern="[a-zA-Z]+"/>
                            </p:inputText>                         
                        </p:column>                    
                    </p:row>
                    <p:row>
                        <p:column></p:column>
                        <p:column styleClass="tdmensaje"><h:message id="mrnombre" for="rnombre"/></p:column>
                        <p:column></p:column>
                        <p:column styleClass="tdmensaje"><h:message id="mrapellidos" for="rapellidos"/></p:column>                    
                    </p:row>  
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Fecha de nacimiento:*"/></p:column>
                        <p:column>
                            <p:calendar id="rfechan" value="#{candidatoCvMB.persona.natalicio}" 
                                        navigator="true" required="true" requiredMessage="Natalicio Obligatorio" 
                                        pattern="dd/MM/yyyy" locale="es" readonly="#{facesContext.renderResponse}">                            
                                <p:ajax event="dateSelect" update="mrfechan"/>
                            </p:calendar>                        
                        </p:column>
                        <p:column styleClass="tdlavel"><h:outputText value="Genero:*"/></p:column>
                        <p:column>
                            <p:selectOneMenu value="#{candidatoCvMB.persona.genero}" id="rgenero" 
                                             required="true" requiredMessage="Genero Obligatorio">
                                    <f:selectItem itemLabel="Seleccione Genero" itemValue="#{null}"/>
                                    <f:selectItem itemValue="M" itemLabel="Masculino"/>
                                    <f:selectItem itemValue="F" itemLabel="Femenino"/>
                                    <p:ajax update="mrgenero, rgenero"/>
                            </p:selectOneMenu>                        
                        </p:column>                    
                    </p:row>  
                    <p:row>
                        <p:column></p:column>
                        <p:column  styleClass="tdmensaje"><h:message id="mrfechan" for="rfechan"/></p:column>
                        <p:column></p:column>
                        <p:column  styleClass="tdmensaje"><h:message id="mrgenero" for="rgenero"/></p:column>                    
                    </p:row> 
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Estado Civil*"/></p:column>
                        <p:column>
                            <p:selectOneMenu value="#{candidatoCvMB.persona.idEstadoCiv}" id="restc" 
                                             required="true" requiredMessage="Estado Civil Obligatorio" 
                                             converter="estadoCivilConverter">
                                <f:selectItem itemLabel="Elija un Estado Civil" itemValue="#{null}"/>
                                <f:selectItems value="#{estadoCivilController.lestadoCivil}"
                                                   var="idEstadoCivilItem"
                                                   itemValue="#{idEstadoCivilItem}"
                                                   itemLabel="#{idEstadoCivilItem.nombre}"/>
                                <p:ajax update="mrestc, restc"/>
                            </p:selectOneMenu>                                                 
                        </p:column>
                        <p:column styleClass="tdlavel"><h:outputText value="Procedencía:*"/></p:column>
                        <p:column>
                            <p:selectOneMenu value="#{candidatoCvMB.persona.esExtranjero}" id="rproc" 
                                             required="true" requiredMessage="Procedencía Obligatoria">
                                    <f:selectItem itemLabel="Seleccione Prosedencia"/>
                                    <f:selectItem itemValue="No" itemLabel="No soy extrangero"/>
                                    <f:selectItem itemValue="Si" itemLabel="Soy extrangero"/>
                                    <p:ajax update="mrproc, rproc"/>
                            </p:selectOneMenu>                        
                        </p:column>                     
                    </p:row> 
                    <p:row>
                        <p:column></p:column>
                        <p:column styleClass="tdmensaje"><h:message id="mrestc" for="restc"/></p:column>
                        <p:column></p:column>
                        <p:column styleClass="tdmensaje"><h:message id="mrproc" for="rproc"/></p:column>                    
                    </p:row>                 
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Dirección:*"/></p:column>
                        <p:column colspan="3">
                            <p:inputTextarea id="nrdirec" rows="3" cols="50" value="#{candidatoCvMB.direccion.referencia}" 
                                             required="true" requiredMessage="Dirección Obligatoria">
                                <p:ajax event="blur" update="mnrdirec, nrdirec"/>
                            </p:inputTextarea>                                               
                        </p:column>
                    </p:row>
                    <p:row>
                        <p:column></p:column>
                        <p:column colspan="3" styleClass="tdmensaje"><h:message id="mnrdirec" for="nrdirec"/></p:column>
                    </p:row>
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Telefono:*" /> </p:column>
                        <p:column colspan="3">
                            <p:inputMask mask="9999-9999" id="rtelefono" value="#{candidatoCvMB.telefono.valor}" required="true" requiredMessage="Telefono Obligatorios">
                                <p:ajax event="blur" update="mrtelefono,rtelefono"/>                            
                            </p:inputMask>                         
                        </p:column>                    
                    </p:row>
                    <p:row>
                        <p:column></p:column>
                        <p:column styleClass="tdmensaje" colspan="3"><h:message id="mrtelefono" for="rtelefono"/></p:column>                    
                    </p:row>                
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Email:*"/></p:column>
                        <p:column colspan="3">
                            <p:inputTextarea id="nremail" rows="1" cols="50" value="#{candidatoCvMB.email.valor}" 
                                             required="true" requiredMessage="Email Obligatorio" validatorMessage="Formato de Email Incorrecto">
                                <f:validateRegex pattern="[\w\.-]*[a-zA-Z0-9_]@[\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]" />
                                <p:ajax event="blur" update="mnremail, nremail"/>
                            </p:inputTextarea>                                               
                        </p:column>
                    </p:row>
                    <p:row>
                        <p:column></p:column>
                        <p:column colspan="3" styleClass="tdmensaje"><h:message id="mnremail" for="nremail" /></p:column>                    
                    </p:row>  
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Facebook:"/></p:column>
                        <p:column colspan="3">
                            <p:inputTextarea id="nrface" rows="1" cols="50" value="#{candidatoCvMB.face.valor}"/>
                        </p:column>
                    </p:row>
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Twiter:"/></p:column>
                        <p:column colspan="3">
                            <p:inputTextarea id="nrtwiter" rows="1" cols="50" value="#{candidatoCvMB.twitter.valor}"/>                                                                        
                        </p:column>
                    </p:row>              
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Departamento:*"/></p:column>
                        <p:column>
                            <p:selectOneMenu id="nrdepto" value="#{candidatoCvMB.departamento}" converter="departamentoConverter" >
                                <f:selectItem itemLabel="Elija un Departamento" itemValue="#{null}"/>
                                <f:selectItems value="#{departamentoController.getlDepartamento()}"
                                                   var="idDepartamentoItem"
                                                   itemValue="#{idDepartamentoItem}"
                                                   itemLabel="#{idDepartamentoItem.nombre}"/>
                                <p:ajax update="nrmuni,mnrdepto,nrdepto"/>
                            </p:selectOneMenu>                       
                        </p:column>
                        <p:column styleClass="tdlavel"><h:outputText value="Municipio*:" /></p:column>
                        <p:column>
                            <p:selectOneMenu id="nrmuni" value="#{candidatoCvMB.direccion.idMunicipio}" required="true" 
                                             requiredMessage="Municipio Obligatorio" converter="municipioConverter">
                                <f:selectItem itemLabel="Elija un Municipio" itemValue="#{null}"/>
                                <f:selectItems value="#{municipioController.getlDepartamento(candidatoCvMB.departamento)}"
                                               var="idMunicipioItem"
                                               itemValue="#{idMunicipioItem}"
                                               itemLabel="#{idMunicipioItem.nombre}"/>                            
                                <p:ajax update="mnrmuni,nrmuni"/>
                            </p:selectOneMenu>                        
                        </p:column>                    
                    </p:row> 
                    <p:row>
                        <p:column></p:column>
                        <p:column styleClass="tdmensaje"><h:message id="mnrdepto" for="nrdepto"/></p:column>
                        <p:column></p:column>
                        <p:column styleClass="tdmensaje"><h:message id="mnrmuni" for="nrmuni"/></p:column>                    
                    </p:row>                                 
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Especialidad:*"/></p:column>
                        <p:column colspan="3">
                            <p:selectOneMenu id="respc" value="#{candidatoCvMB.persona.idRubro}" required="true" 
                                             requiredMessage="Especialidad Obligatoria" converter="rubroConverter">
                                <f:selectItem itemLabel="Elija una Especialidad"/>
                                <f:selectItems value="#{rubroController.getlrubro()}"
                                               var="idRubroItem"
                                               itemValue="#{idRubroItem}"
                                               itemLabel="#{idRubroItem.nombre}"/>                           
                                <p:ajax update="mrespc,respc"/>
                            </p:selectOneMenu>                                                         
                        </p:column>
                    </p:row>
                    <p:row>
                        <p:column></p:column>
                        <p:column colspan="3" styleClass="tdmensaje"><h:message id="mrespc" for="respc"/></p:column>
                    </p:row>                 
                    <p:row>
                        <p:column styleClass="tdlavel"><h:outputText value="Privacidad de Datos:*"/></p:column>
                        <p:column colspan="3">
                            <p:selectOneMenu id="rpriv" value="#{candidatoCvMB.persona.privacidad}" required="true" 
                                             requiredMessage="Privacidad Obligatoria">
                                    <f:selectItem itemLabel="Seleccione el nivel de Privacidad"/>
                                    <f:selectItem itemValue="P" itemLabel="Publico en General"/>
                                    <f:selectItem itemValue="R" itemLabel="Solo en solicitudes que aplique"/>
                                    <p:ajax update="mrpriv, rpriv"/>
                            </p:selectOneMenu>                                                         
                        </p:column>
                    </p:row>
                    <p:row>
                        <p:column></p:column>
                        <p:column colspan="3" styleClass="tdmensaje"><h:message id="mrpriv" for="rpriv"/></p:column>
                    </p:row>                                 
                    <p:row>
                        <p:column colspan="4" style="text-align: center">
                                <p:commandButton value="Actualizar Información" 
                                                 icon="ui-icon-disk"
                                                 actionListener="#{candidatoCvMB.ActualizarCandidato()}"
                                                 ajax="true"
                                                 update="fanelgc"
                                                 title="Actualizar Información"/>                                                                                               
                        </p:column>
                    </p:row>                                           
                </p:panelGrid>
            </h:form><br/><br/>  
            
            <h:form enctype="multipart/form-data">
                <p:fileUpload fileUploadListener="#{candidatoCvMB.processFileUpload}"
                              label="Seleccionar" cancelLabel="Cancelar" uploadLabel="Subir Archivos" sizeLimit="400000"
                    invalidSizeMessage="Imagen demasiado grande"
                    invalidFileMessage="Tipo de imagen no soportado"
                    fileLimit="2"
                    allowTypes="/(\.|\/)(jpe?g|png)$/" />
            </h:form><br/><br/>
            

            <h:form id="frmdetidiomas">  
                <p:commandButton value="Agregar Idioma" 
                                 icon="ui-icon-plus"
                                 ajax="true"
                                 update=":frmnuevoIdioma:dlgnuevoIdioma"
                                 oncomplete="dlgnuevoIdioma.show();"                                 
                                 actionListener="#{candidatoCvMB.prepRegistrarIdioma()}"
                                 title="Click Aqui para Registrar Idioma"/>
                <br/><br/>
                <p:dataTable id="datatableid" style="font-size: 13px;"
                             var="didioma" 
                             emptyMessage="No hay Idiomas Registradas" 
                             value="#{idiomaPersonaController.getlIdiomaPersona(candidatoCvMB.persona)}" 
                             paginator="true" 
                             paginatorPosition="bottom"
                             rows="10"  
                             paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                             rowsPerPageTemplate="5,10,15">  

                    <p:column headerText="Lista de Idiomas" filterBy="#{didioma.idIdioma.nombre}" filterMatchMode="contains" style="width: 40px;">  
                        <h:outputText value="#{didioma.idIdioma.nombre}"/>  
                    </p:column>    
                    <p:column style="width:10%; text-align: center" headerText="Opciones"> 
                        <p:commandButton update=":frmdetidiomas:datatableid"
                                         actionListener="#{candidatoCvMB.prepararEliminarIdioma(didioma.idIdiomaPersona)}"
                                         icon="ui-icon-circle-minus"
                                         oncomplete="dlgeliminarDetIdio.show();"
                                         title="Eliminar Habilidad"/>                                                                
                    </p:column>                
                </p:dataTable>
            </h:form><br/><br/>
            
            <h:form id="frmdethabilms">  
                <p:commandButton value="Nueva Habilidad" 
                                 icon="ui-icon-plus"
                                 ajax="true"
                                 update=":frmnuevoHabilidad:dlgnuevoHabilidad"
                                 oncomplete="dlgnuevoHabilidad.show();"                                 
                                 actionListener="#{candidatoCvMB.prepRegistrarHabilidad()}"
                                 title="Click Aqui para Registrar Habilidad"/>
                <br/><br/>

                <p:dataTable id="datatablehb" style="font-size: 13px;"
                             var="dhabil" 
                             emptyMessage="No hay Habilidades Registradas" 
                             value="#{candidatoCvMB.persona.detalleHabilidadesList}" 
                             paginator="true" 
                             paginatorPosition="bottom"
                             rows="10"  
                             paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                             rowsPerPageTemplate="5,10,15">  

                    <p:column headerText="Lista de Habilidades" filterBy="#{dhabil.idHabilidad.nombre}" filterMatchMode="contains" style="width: 40px;white-space:pre-line;">  
                        <h:outputText value="#{dhabil.idHabilidad.nombre}"/>  
                    </p:column>  
                    <p:column headerText="Categoría" filterBy="#{dhabil.idHabilidad.idCategoria.nombre}" filterMatchMode="contains" style="width: 50px;white-space:pre-line;">  
                        <h:outputText value="#{dhabil.idHabilidad.idCategoria.nombre}"/>  
                    </p:column>  
                    <p:column style="width:10%; text-align: center" headerText="Opciones"> 
                        <p:commandButton update=":frmdethabilms:datatablehb"
                                         actionListener="#{candidatoCvMB.prepararEliminarHabilidad(dhabil.idDetalleHabil)}"
                                         icon="ui-icon-circle-minus"
                                         oncomplete="dlgeliminar.show();"
                                         title="Eliminar Habilidad"/>                                                                
                    </p:column>                
                </p:dataTable>
            </h:form><br/><br/>
        
        
            <h:form id="frmdetestudms">
                <p:commandButton value="Nuevo Estudio Realizado" 
                                 icon="ui-icon-plus"
                                 update=":frmnuevoDestudio:dlgnuevoDestudio"
                                 oncomplete="dlgnuevoDestudio.show();"                                 
                                 actionListener="#{candidatoCvMB.prepRegistrarEstudio()}"
                                 title="Click Aqui para Registrar Estudios"/>  
                <br/><br/>                

                <p:dataTable id="datatableet" style="width: 100%;font-size: 14px;"
                             var="destud" 
                             emptyMessage="No hay Estudios Registrados" 
                             value="#{detalleEstudioController.getlDetalleEstudio(candidatoCvMB.persona)}" 
                             paginator="true" 
                             paginatorPosition="bottom"
                             rows="10"  
                             paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                             rowsPerPageTemplate="5,10,15">  

                    <p:column headerText="Titulo Optenido" filterBy="#{destud.nombre}" filterMatchMode="contains" style="white-space:pre-line;">  
                        <h:outputText value="#{destud.nombre}"/>
                    </p:column>  
                    <p:column headerText="Institución" filterBy="#{destud.institucion}" filterMatchMode="contains" style="white-space:pre-line;">  
                        <h:outputText value="#{destud.institucion}"/><br/>  
                        <h:outputText value="(#{destud.idTipoEst.nombre})"/>    
                    </p:column>                    
                    <p:column headerText="Pais" filterBy="#{destud.idPais.nombre}" filterMatchMode="contains" style="white-space:pre-line;">  
                        <h:outputText value="#{destud.idPais.nombre}/"/>  
                    </p:column> 
                    <p:column style="width:10%; text-align: center" headerText="Opciones">   
                        <p:commandButton update=":frmupdateDestudio:dlgupdateDestudio"
                                         actionListener="#{candidatoCvMB.prepararActualizarEstudio(destud.idDetalleEst)}"
                                         icon="ui-icon-pencil"
                                         oncomplete="dlgupdateDestudio.show();"
                                         title="Editar Estudio Realizado"/>                    
                        <p:commandButton update=":frmeliminarDestd:dlgeliminarDestd"
                                         actionListener="#{candidatoCvMB.prepararEliminarEstudio(destud.idDetalleEst)}"
                                         icon="ui-icon-circle-minus"
                                         oncomplete="dlgeliminarDestd.show();"
                                         title="Eliminar Estudio Realizado"/>                      
                    </p:column>                 
                </p:dataTable>
            </h:form><br/><br/>  
        
               
            <h:form id="frmdhabextms">  
                <p:commandButton value="Nueva Habilidad Extra" 
                                 icon="ui-icon-plus"
                                 update=":frmnuevoHabExt:dlgnuevoHabExt"
                                 oncomplete="dlgnuevoHabExt.show();"                                 
                                 actionListener="#{candidatoCvMB.prepRegistrarHabExt()}"
                                 title="Click aqui para Registrar Habilidad Extra"/>
                <br/><br/>                

                <p:dataTable id="datatablehabext" style="width: 100%;font-size: 14px;"                         
                             var="dhabext" 
                             emptyMessage="No hay Habilidades Registradas" 
                             value="#{habilidadesExtrasController.getLhabilidadesExtras(candidatoCvMB.persona)}" 
                             paginator="true" 
                             paginatorPosition="bottom"
                             rows="10"  
                             paginatorTemplate="{FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                             rowsPerPageTemplate="5,10,15">  

                    <p:column headerText="Habilidad" filterBy="#{dhabext.nombre}" filterMatchMode="contains" style="width: 40%;white-space:pre-line;">  
                        <div><h:outputText value="#{dhabext.nombre}"/></div>
                    </p:column>  
                    <p:column headerText="Descripción" filterBy="#{dhabext.descripcion}" filterMatchMode="contains" style="width: 50%;white-space:pre-line;">  
                        <h:outputText value="#{dhabext.descripcion}"/>
                    </p:column>
                    <p:column style="width: 10%;text-align: center" headerText="Opciones">  
                        <p:commandButton update=":frmupdateHabExt:dlgupdateHabExt"
                                         actionListener="#{candidatoCvMB.prepActualizarHabExt(dhabext.idHabilidadExt)}"
                                         icon="ui-icon-pencil"
                                         oncomplete="dlgupdateHabExt.show();"
                                         title="Editar Habilidad Extra"/>  
                        <p:commandButton update=":frmeliminarHabExt:dlgeliminarHabExt"
                                         actionListener="#{candidatoCvMB.prepararEliminarHabExt(dhabext.idHabilidadExt)}"
                                         icon="ui-icon-circle-minus"
                                         oncomplete="dlgeliminarHabExt.show();"
                                         title="Eliminar Habilidad Extra"/>
                    </p:column>                                                                                         
                </p:dataTable>
            </h:form>         
        </ui:define> 
        
        <ui:define name="dialog" >
            <h:form id="frmnuevoIdioma">
                <p:dialog header="Registro de Idiomas" widgetVar="dlgnuevoIdioma" resizable="false" id="dlgnuevoIdioma" modal="true" appendToBody="false">                
                    <p:panelGrid>
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Categoría de habilidad:*"/></p:column>
                            <p:column>
                                <p:selectOneMenu id="nidioma" value="#{candidatoCvMB.idiomaPersona.idIdioma}" required="true" requiredMessage="Idioma Obligatorio" converter="idiomaConverter">
                                    <f:selectItem itemLabel="Seleccione un Idioma"/>
                                    <f:selectItems value="#{idiomaController.lIdioma(candidatoCvMB.persona)}"
                                                       var="idIdiomaItem"
                                                       itemValue="#{idIdiomaItem}"
                                                       itemLabel="#{idIdiomaItem.nombre}"/>   
                                    <p:ajax update="mnidioma"/>
                                </p:selectOneMenu>                                                            
                            </p:column>                            
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column colspan="3" styleClass="tdmensaje"><h:message id="mnidioma" for="nidioma"/></p:column>
                        </p:row>                        
                    </p:panelGrid> 
                    <p:separator/>
                    <p:commandButton value="Registrar" 
                                     icon="ui-icon-disk"
                                     update=":frmdetidiomas:datatableid,mnidioma"
                                     actionListener="#{candidatoCvMB.registrarIdioma()}" 
                                     oncomplete="if(!args.validationFailed) dlgnuevoIdioma.hide()"
                                     title="Registrar"/>
                    <p:commandButton value="Cancelar" 
                                     icon="ui-icon-circle-close"
                                     oncomplete="dlgnuevoIdioma.hide()" 
                                     title="Cancelar"/>                     
                </p:dialog>            
            </h:form>            
            <h:form id="frmeliminarIdio">                                   
                <p:dialog id="dlgeliminarDetIdio" header="Confirmación de Operación" widgetVar="dlgeliminarDetIdio" modal="true" appendToBody="false">     
                    <h:outputText value="En realidad desea Eliminar este Registro?  "/> 
                    <p:separator/>               
                    <p:commandButton value="Si" 
                                     update=":frmdetidiomas:datatableid" 
                                     actionListener="#{candidatoCvMB.eliminarIdioma()}" 
                                     oncomplete="dlgeliminarDetIdio.hide()" 
                                     title="Si"/>  
                    <p:commandButton value="No" 
                                     oncomplete="dlgeliminarDetIdio.hide()" 
                                     title="No"/>       
                </p:dialog>  
            </h:form>            

            <h:form id="frmnuevoHabilidad">
                <p:dialog header="Registro de Habilidades" widgetVar="dlgnuevoHabilidad" resizable="false" id="dlgnuevoHabilidad" modal="true" appendToBody="false">                
                    <p:panelGrid>
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Categoría de habilidad:*"/></p:column>
                            <p:column>
                                <p:selectOneMenu id="nhcat" value="#{candidatoCvMB.categoria}" required="true" requiredMessage="Categoría Obligatoria" converter="categoriaConverter">
                                    <f:selectItem itemLabel="Seleccione una Categoría" itemValue="#{null}"/>
                                    <f:selectItems value="#{categoriaController.getlCategoria()}"
                                                       var="idCategoriaItem"
                                                       itemValue="#{idCategoriaItem}"
                                                       itemLabel="#{idCategoriaItem.nombre}"/>                          
                                    <p:ajax event="blur" update="mnhcat"/>
                                    <p:ajax event="change" update="nhhab"/>
                                </p:selectOneMenu>                                                            
                            </p:column>
                        </p:row> 
                        <p:row>
                            <p:column></p:column>
                            <p:column colspan="3" styleClass="tdmensaje"><h:message id="mnhcat" for="nhcat"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Habilidad:*"/>  </p:column>
                            <p:column>
                                <p:selectOneMenu id="nhhab" value="#{candidatoCvMB.detalleHabilidades.idHabilidad}" required="true" requiredMessage="Habilidad Obligatoria" converter="habilidadConverter">
                                    <f:selectItem itemLabel="Seleccione una Habilidad" itemValue="#{null}"/>
                                    <f:selectItems value="#{habilidadController.getlHabilidad(candidatoCvMB.persona,candidatoCvMB.categoria)}"
                                                       var="idHabilidadesItem"
                                                       itemValue="#{idHabilidadesItem}"
                                                       itemLabel="#{idHabilidadesItem.nombre}"/>  
                                    <p:ajax event="blur" update="mnhhab"/>
                                </p:selectOneMenu>                                                            
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column colspan="3" styleClass="tdmensaje"><h:message id="mnhhab" for="nhhab"/></p:column>
                        </p:row>                                        
                    </p:panelGrid>                                       
                    <p:separator/>
                    <p:commandButton value="Registrar" 
                                     icon="ui-icon-disk"
                                     update=":frmdethabilms:datatablehb,mnhhab,mnhcat"
                                     actionListener="#{candidatoCvMB.registrarHabilidad()}" 
                                     oncomplete="if(!args.validationFailed) dlgnuevoHabilidad.hide()"
                                     title="Registrar"/>
                    <p:commandButton value="Cancelar" 
                                     icon="ui-icon-circle-close"
                                     oncomplete="dlgnuevoHabilidad.hide()" 
                                     title="Cancelar"/>        
                </p:dialog>            
            </h:form>
            <h:form id="frmeliminar">                                   
                <p:dialog id="dlgeliminar" header="Confirmación de Operación" widgetVar="dlgeliminar" modal="true" appendToBody="false">     
                    <h:outputText value="En realidad desea Eliminar este Registro?  "/> 
                    <p:separator/>               
                    <p:commandButton value="Si" 
                                     update=":frmdethabilms:datatablehb" 
                                     actionListener="#{candidatoCvMB.eliminarHabilidad()}" 
                                     oncomplete="dlgeliminar.hide()" 
                                     title="Si"/>  
                    <p:commandButton value="No" 
                                     oncomplete="dlgeliminar.hide()" 
                                     title="No"/>       
                </p:dialog>  
            </h:form>            

            <h:form id="frmnuevoDestudio">
                <p:dialog header="Registro de Estudios Realizados" widgetVar="dlgnuevoDestudio" resizable="false" id="dlgnuevoDestudio" modal="true" appendToBody="false">    
                    <p:panelGrid>
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Titulo Optenido:*"/></p:column>
                            <p:column><p:inputTextarea id="ntitulo" rows="3" cols="33" value="#{candidatoCvMB.detalleEstudio.nombre}" required="true" requiredMessage="Titulo Obligatorio">
                                        <p:ajax event="blur" update="mntitulo"/>
                                      </p:inputTextarea>
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mntitulo" for="ntitulo"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Institución:*"/></p:column>
                            <p:column><p:inputTextarea id="ninst" rows="3" cols="33" value="#{candidatoCvMB.detalleEstudio.institucion}" required="true" requiredMessage="Titulo Obligatorio">
                                        <p:ajax event="blur" update="mninst"/>
                                      </p:inputTextarea></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mninst" for="ninst"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Fecha en lo obtuvo:*"/></p:column>
                            <p:column><p:calendar id="rfechan" value="#{candidatoCvMB.detalleEstudio.fechaObtencion}" 
                                                  navigator="true" required="true" requiredMessage="Fecha Obligatoria" 
                                                  pattern="dd/MM/yyyy" yearRange="1901:2014}">
                                        <p:ajax event="blur" update="mrfechan"/>
                                      </p:calendar></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mrfechan" for="rfechan"/></p:column>
                        </p:row>                           
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Modalidad:*" />  </p:column>
                            <p:column>
                                <p:selectOneMenu id="nmoda" value="#{candidatoCvMB.detalleEstudio.idTipoEst}" required="true" requiredMessage="Modalidad Obligatoria" converter="tipoEstudioConverter">
                                    <f:selectItem itemLabel="Seleccione una Modalidad" />
                                    <f:selectItems value="#{tipoEstudioController.getlTipoEstudio()}"
                                                       var="idTipoEstudioItem"
                                                       itemValue="#{idTipoEstudioItem}"
                                                       itemLabel="#{idTipoEstudioItem.nombre}"/>
                                    <p:ajax event="blur" update="mnmoda"/>
                                </p:selectOneMenu>                            
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mnmoda" for="nmoda"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Pais:*"/>  </p:column>
                            <p:column>
                                <p:selectOneMenu id="nepais" value="#{candidatoCvMB.detalleEstudio.idPais}" required="true" requiredMessage="País Obligatorio" converter="paisConverter">
                                    <f:selectItem itemLabel="Seleccione un Pais" />
                                    <f:selectItems value="#{paisController.getlPais()}"
                                                       var="idTipoEstudioItem"
                                                       itemValue="#{idTipoEstudioItem}"
                                                       itemLabel="#{idTipoEstudioItem.nombre}"/>
                                    <p:ajax event="blur" update="mnepais"/>
                                </p:selectOneMenu>                            
                            </p:column>
                        </p:row>                        
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mnepais" for="nepais"/></p:column>
                        </p:row>                                                                            
                    </p:panelGrid>
                    <p:separator/>
                    <p:commandButton value="Registrar" 
                                     icon="ui-icon-disk"
                                     update=":frmdetestudms:datatableet,mnepais,mnmoda,mrfechan,mntitulo,mninst" 
                                     actionListener="#{candidatoCvMB.registrarEstudio()}" 
                                     oncomplete="if(!args.validationFailed) dlgnuevoDestudio.hide()"
                                     title="Registrar"/>
                    <p:commandButton value="Cancelar" 
                                     icon="ui-icon-circle-close"
                                     oncomplete="dlgnuevoDestudio.hide()" 
                                     title="Cancelar"/>        
                </p:dialog>            
            </h:form>
            <h:form id="frmupdateDestudio">
                <p:dialog header="Edición de Estudios Realizados" widgetVar="dlgupdateDestudio" resizable="false" id="dlgupdateDestudio" modal="true" appendToBody="false">    
                    <p:panelGrid>
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Titulo Optenido:*"/></p:column>
                            <p:column><p:inputTextarea id="atitulo" rows="3" cols="33" value="#{candidatoCvMB.detalleEstudio.nombre}" required="true" requiredMessage="Titulo Obligatorio">
                                        <p:ajax event="blur" update="matitulo"/>
                                      </p:inputTextarea></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="matitulo" for="atitulo"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Institución:*"/></p:column>
                            <p:column><p:inputTextarea id="ainst" rows="3" cols="33" value="#{candidatoCvMB.detalleEstudio.institucion}" required="true" requiredMessage="Institución Obligatoria">
                                        <p:ajax event="blur" update="mainst"/>
                                      </p:inputTextarea></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mainst" for="ainst"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Fecha en lo obtuvo:*" /></p:column>
                            <p:column><p:calendar id="arfechan" value="#{candidatoCvMB.detalleEstudio.fechaObtencion}" navigator="true" required="true" requiredMessage="Fecha Obligatoria" pattern="dd/MM/yyyy" timeZone="America/El_Salvador" locale="es">
                                        <p:ajax event="blur" update="mafechan"/>
                                      </p:calendar>
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mafechan" for="arfechan"/></p:column>
                        </p:row>                                        
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Modalidad:*"/></p:column>
                            <p:column>
                                <p:selectOneMenu id="aemod" value="#{candidatoCvMB.detalleEstudio.idTipoEst}" required="true" requiredMessage="Modalidad Obligatoria" converter="tipoEstudioConverter">
                                    <f:selectItem itemLabel="Seleccione una Modalidad" />
                                    <f:selectItems value="#{tipoEstudioController.getlTipoEstudio()}"
                                                       var="idTipoEstudioItem"
                                                       itemValue="#{idTipoEstudioItem}"
                                                       itemLabel="#{idTipoEstudioItem.nombre}"/>
                                    <p:ajax update="maemod"/>
                                </p:selectOneMenu>                            
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="maemod" for="aemod"/></p:column>
                        </p:row>                                              
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Pais:*"/></p:column>
                            <p:column>
                                <p:selectOneMenu id="aepais" value="#{candidatoCvMB.detalleEstudio.idPais}" required="true" requiredMessage="Pais Obligatorio" converter="paisConverter">
                                    <f:selectItem itemLabel="Seleccione un Pais" />
                                    <f:selectItems value="#{paisController.getlPais()}"
                                                       var="idTipoEstudioItem"
                                                       itemValue="#{idTipoEstudioItem}"
                                                       itemLabel="#{idTipoEstudioItem.nombre}"/>                          
                                    <p:ajax update="maepais"/>
                                </p:selectOneMenu>                        
                            </p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="maepais" for="aepais"/></p:column>
                        </p:row>                                               
                    </p:panelGrid>
                    <p:separator/>                
                    <p:commandButton value="Editar" 
                                     icon="ui-icon-disk"
                                     update=":frmdetestudms:datatableet,maepais,maemod,mafechan,mainst,matitulo" 
                                     actionListener="#{candidatoCvMB.actualizarEstudio()}" 
                                     oncomplete="if(!args.validationFailed) dlgupdateDestudio.hide()"
                                     title="Editar"/>
                    <p:commandButton value="Cancelar" 
                                     icon="ui-icon-circle-close"
                                     oncomplete="dlgupdateDestudio.hide()" 
                                     title="Cancelar"/>        
                </p:dialog>            
            </h:form>                
            <h:form id="frmeliminarDestd">                                   
                <p:dialog id="dlgeliminarDestd"
                                 header="Confirmación de Operación" widgetVar="dlgeliminarDestd" modal="true" appendToBody="false">     
                    <h:outputText value="En realidad desea Eliminar este Registro?  "/> 
                    <p:separator/>
                    <p:commandButton value="Si" 
                                     update=":frmdetestudms:datatableet" 
                                     actionListener="#{candidatoCvMB.eliminarEstudio()}" 
                                     oncomplete="dlgeliminarDestd.hide()" 
                                     title="Si"/>  
                    <p:commandButton value="No" 
                                     oncomplete="dlgeliminarDestd.hide()" 
                                     title="No"/>       
                </p:dialog>  
            </h:form><br/>        

            <h:form id="frmnuevoHabExt">
                <p:dialog header="Registro de Habilidades extras" widgetVar="dlgnuevoHabExt" resizable="false" id="dlgnuevoHabExt"  modal="true" appendToBody="false">    
                    <p:panelGrid>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Habilidad:*" /></p:column>
                            <p:column><p:inputTextarea id="nhabiext" rows="3" cols="33" value="#{candidatoCvMB.habilidadesExtras.nombre}" required="true" requiredMessage="Habilidad Obligatoria">
                                        <p:ajax event="blur" update="mnhabiext"/>
                                      </p:inputTextarea></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mnhabiext" for="nhabiext"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Descripción:*"/></p:column>
                            <p:column><p:inputTextarea id="nhdext" rows="3" cols="33" value="#{candidatoCvMB.habilidadesExtras.descripcion}" required="true" requiredMessage="Descripción Obligatoria">
                                        <p:ajax event="blur" update="mnhdext"/>
                                      </p:inputTextarea></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mnhdext" for="nhdext"/></p:column>
                        </p:row>                    
                    </p:panelGrid>
                    <p:separator/>
                    <p:commandButton value="Registrar" 
                                     icon="ui-icon-disk"
                                     update=":frmdhabextms:datatablehabext,mnhabiext,mnhdext" 
                                     actionListener="#{candidatoCvMB.registrarHabExt()}" 
                                     oncomplete="if(!args.validationFailed) dlgnuevoHabExt.hide()"
                                     title="Registrar"/>
                    <p:commandButton value="Cancelar" 
                                     icon="ui-icon-circle-close"
                                     oncomplete="dlgnuevoHabExt.hide()" 
                                     title="Cancelar"/>        
                </p:dialog>            
            </h:form>        
            <h:form id="frmupdateHabExt">
                <p:dialog header="Edición de Habilidades extras" widgetVar="dlgupdateHabExt" resizable="false" id="dlgupdateHabExt" modal="true" appendToBody="false">    
                    <p:panelGrid>
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Habilidad:*" /></p:column>
                            <p:column><p:inputTextarea id="ahabiext" rows="3" cols="33" value="#{candidatoCvMB.habilidadesExtras.nombre}" required="true" requiredMessage="Habilidad Obligatoria">
                                        <p:ajax event="blur" update="mahabiext"/>
                                      </p:inputTextarea></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mahabiext" for="ahabiext"/></p:column>
                        </p:row>                    
                        <p:row>
                            <p:column styleClass="tdlavel"><h:outputText value="Descripción:*"/></p:column>
                            <p:column><p:inputTextarea id="ahdext" rows="3" cols="33" value="#{candidatoCvMB.habilidadesExtras.descripcion}" required="true" requiredMessage="Descripción Obligatoria">
                                        <p:ajax event="blur" update="mahdext"/>
                                      </p:inputTextarea></p:column>
                        </p:row>
                        <p:row>
                            <p:column></p:column>
                            <p:column styleClass="tdmensaje"><h:message id="mahdext" for="ahdext"/></p:column>
                        </p:row>                    
                    </p:panelGrid>
                    <p:separator/>
                    <p:commandButton value="Editar" 
                                     icon="ui-icon-disk"
                                     update=":frmdhabextms:datatablehabext,,mahabiext,mahdext"
                                     actionListener="#{candidatoCvMB.actualizarHabExt()}" 
                                     oncomplete="if(!args.validationFailed) dlgupdateHabExt.hide()"
                                     title="Editar"/>
                    <p:commandButton value="Cancelar" 
                                     icon="ui-icon-circle-close"
                                     oncomplete="dlgupdateHabExt.hide()" 
                                     title="Cancelar"/>        
                </p:dialog>            
            </h:form>                     
            <h:form id="frmeliminarHabExt">                                   
                <p:dialog id="dlgeliminarHabExt"
                          header="Confirmación de Operación" widgetVar="dlgeliminarHabExt" modal="true" appendToBody="false">     
                    <h:outputText value="En realidad desea Eliminar este Registro? "/> 
                    <p:separator/>
                    <p:commandButton value="Si" 
                                     update=":frmdhabextms:datatablehabext" 
                                     actionListener="#{candidatoCvMB.eliminarHabExt()}" 
                                     oncomplete="dlgeliminarHabExt.hide()" 
                                     title="Si"/>  
                    <p:commandButton value="No" 
                                     oncomplete="dlgeliminarHabExt.hide()" 
                                     title="No"/>       
                </p:dialog>  
            </h:form><br/>               

        </ui:define>
        
    </ui:composition>
</html>